Video surveillance systems are commonly used to detect incidents that a user may deem desirable. For instance, surveillance systems may be used at banks, stores and homes. Typically, a user installs one or more cameras at a desired location and the images captured by the cameras are communicated to a device for viewing and/or recording. The user may then view the transmitted images. The images may be communicated from the camera to the recording device or a monitor through a wired or wireless network.
Modern video surveillance systems may include one or more cameras which use the Internet Protocol to transmit image data and control signals over a network. These cameras are commonly referred to as IP cameras. IP cameras capture and send video footage over an Internet Protocol network, such as an Ethernet Link, allowing users to view, record, store and manage their video surveillance images either locally or remotely over a network infrastructure. IP cameras can be placed anywhere there is an IP network connection. In addition to streaming video footage, IP cameras may include other functionalities such as, for example, pan/tilt/zoom operation, motion detection, audio surveillance, integration with alarms, automated alerts, and intelligent video analytics.
In order to ensure the proper operation of a network surveillance system, it is important that the selected components be compatible. However, the methodology for determining performance characteristics of a surveillance security server has always proven difficult. For instance, the network server utilized must match the system requirements. The demands placed on the network server may be affected by a number of variables including the bandwidth requirements of the system components, the desired frame rates for the surveillance system, the storage capacities of the system components and the different options of the surveillance software. In order to maximize the efficiency of a video surveillance system, a user must select the right server for the desired system configuration.
Typically, the user has to go through a number of iterations when selecting the components of the network surveillance system to achieve an optimal result. For example, the user will select an initial configuration for the video surveillance system. The user may then go through a number of iterations, based on trial and error, in order to identify the network server that is best suited for the selected system configuration. Moreover, if the user decides to change an existing video surveillance configuration, the iterations must be repeated to achieve optimal system performance. However, this is an inefficient and time consuming process. It is therefore desirable to have a systematic approach for designing a video surveillance system which best meets a user's existing or known future requirements.